#!/usr/bin/env python

Import('env')

import os
from platform_methods import run_in_subprocess
import platform_windows_builders

common_win = [
    "godot_windows.cpp",
    "context_gl_windows.cpp",
    "crash_handler_windows.cpp",
    "os_windows.cpp",
    "key_mapping_windows.cpp",
    "joypad_windows.cpp",
    "power_windows.cpp",
    "windows_terminal_logger.cpp"
]

res_file = 'godot_res.rc'
res_target = "godot_res" + env["OBJSUFFIX"]
res_obj = env.RES(res_target, res_file)

prog = env.add_program('#bin/godot', common_win + res_obj, PROGSUFFIX=env["PROGSUFFIX"])

# Microsoft Visual Studio Project Generation
if env['vsproj']:
    env.vs_srcs = env.vs_srcs + ["platform/windows/" + res_file]
    env.vs_srcs = env.vs_srcs + ["platform/windows/godot.natvis"]
    for x in common_win:
        env.vs_srcs = env.vs_srcs + ["platform/windows/" + str(x)]

if not os.getenv("VCINSTALLDIR"):
    if (env["debug_symbols"] == "full" or env["debug_symbols"] == "yes") and env["separate_debug_symbols"]:
        env.AddPostAction(prog, run_in_subprocess(platform_windows_builders.make_debug_mingw))
